package com.timoon.component.panel.highcharts;

import org.apache.wicket.AttributeModifier;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.panel.Panel;

import com.googlecode.wicket.jquery.ui.Options;
import com.timoon.app.utils.GlobalRandom;
import com.timoon.component.behavior.highcharts.HighChartsBehavior;
import com.timoon.component.panel.highcharts.parameter.HighChartsAreaParameter;

/**
 *<p></p>
 *<p></p>
 *<p>Copyright:Copyright(c)2013</p>
 *<p>Company:timoon</p>
 *@author 付乐天
 *@version 1.0 */

public class AreaPanel extends Panel {

	public AreaPanel(String id,HighChartsAreaParameter parameter) {
		super(id);
		// TODO Auto-generated constructor stub
		
		Options ops=new Options();
		
		ops.set("chart", "{type: 'area'}");
		
		ops.set("title", "{text: "+parameter.getTitle_text()+"}");
		
		ops.set("subtitle", "{text: 'Source: <a href=\"http://thebulletin.metapress.com/content/c4120650912x74k7/fulltext.pdf\">thebulletin.metapress.com</a>'}");
	
		ops.set("xAxis", "{labels: {formatter: function() {return this.value;}}}");
		
		ops.set("yAxis", "{title: {text: 'Nuclear weapon states'},labels: {formatter: function() {return this.value / 1000 +'k';}}}");
	
		ops.set("tooltip", "{pointFormat: '{series.name} produced <b>{point.y:,.0f}</b><br/>warheads in {point.x}'}");
		
		ops.set("plotOptions", "{area: {pointStart: 1940,marker: {enabled: false,symbol: 'circle',radius: 2,states: {hover: {enabled: true} }}}}");
	
		ops.set("series", "[{name: 'USA',data: [null, null, null, null, null, 6 , 11, 32, 110, 235, 369, 640,1005, 1436, 2063, 3057, 4618, 6444, 9822, 15468, 20434, 24126,27387, 29459, 31056, 31982, 32040, 31233, 29224, 27342, 26662,26956, 27912, 28999, 28965, 27826, 25579, 25722, 24826, 24605,24304, 23464, 23708, 24099, 24357, 24237, 24401, 24344, 23586,22380, 21004, 17287, 14747, 13076, 12555, 12144, 11009, 10950,10871, 10824, 10577, 10527, 10475, 10421, 10358, 10295, 10104 ]}, {name: 'USSR/Russia',data: [null, null, null, null, null, null, null , null , null ,null,5, 25, 50, 120, 150, 200, 426, 660, 869, 1060, 1605, 2471, 3322,4238, 5221, 6129, 7089, 8339, 9399, 10538, 11643, 13092, 14478,15915, 17385, 19055, 21205, 23044, 25393, 27935, 30062, 32049,33952, 35804, 37431, 39197, 45000, 43000, 41000, 39000, 37000,35000, 33000, 31000, 29000, 27000, 25000, 24000, 23000, 22000,21000, 20000, 19000, 18000, 18000, 17000, 16000]}]");
	
		WebMarkupContainer area=new WebMarkupContainer("wk_highcharts_area");
		add(area);
		
		//生成随机id
		String containerID="highcharts_container_"+GlobalRandom.getRandom();
		area.add(new AttributeModifier("id", containerID));
		
		area.add(new HighChartsBehavior("#"+containerID,ops));
	}

}
